package com.sojson.project.sentinel.dao;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sojson.project.sentinel.entity.dto.SentinelDto;
import com.sojson.project.sentinel.entity.dto.SentinelPageDto;
import com.sojson.project.sentinel.entity.po.Sentinel;
import com.sojson.project.sentinel.entity.vo.SentinelVo;

/**
 * Sentinel限流Dao
 * 
 * @author liu
 * @date 2022-10-25
 */
public interface SentinelDao extends BaseMapper<Sentinel> {

    /**
     * 通过对象查找
     * 
     * @param dto
     * @return
     */
    List<SentinelVo> list(SentinelDto dto);

    /**
     * 通过对象分页查找
     * 
     * @param dto
     * @return
     */
    List<SentinelVo> page(SentinelPageDto dto);

    /**
     * 通过对象删除
     * 
     * @param dto
     * @return
     */
    int removeByDto(SentinelDto dto);

    /**
     * 清空数据
     * 
     * @return
     */
    int clear();

    /**
     * 通过对象查询id列表
     * 
     * @param dto
     * @return
     */
    List<String> findIdByDto(Sentinel dto);

}